Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[7.0] Fix the tiering delay to account for changing IL/native code versions during the delay #78669

Merged
merged 1 commit into from
Nov 29, 2022

Conversation

kouvel
Copy link
Member

@kouvel kouvel commented Nov 22, 2022

Fixes #77973

Customer Impact

Apps that use profiler APIs to modify a method's IL may occasionally crash. If a new IL code version is added to a method while it's queued for call counting during the tiering delay, after the delay expires a call counting stub may be created that when called, would cause the app to crash. A workaround is to disable tiered compilation.

Regression?

No

Testing

Reproed the issue by inducing the timing with code changes and verified the fix. Scanned over the few other paths where call counting stubs would be created and verified that all of them guarantee a non-null code entry point for the method.

Risk

Low

…rsions during the delay

- Port of dotnet#78668
- Added a check to see if the currently active native code version has a code entry point

Fixes dotnet#77973
@kouvel kouvel added this to the 7.0.x milestone Nov 22, 2022
@kouvel kouvel self-assigned this Nov 22, 2022
@carlossanlop
Copy link
Member

@kouvel I posted the same comment in the 6.0 PR, but adding it here too for clarity: for the January servicing release, we only have a window of one day to merge backports (from Nov. 29th to Nov. 30th). For that reason, I'm asking all backport submitters to make sure the PR is ready for me to just hit the merge button on that day.

If this is ready, please ask @jeffschwMSFT if he approves the backport. If approved, then:

  • Get a code review sign-off from an area owner (@davmason / @noahfalk).
  • Add the servicing-consider label.
  • Send an email to Tactics requesting approval.

Copy link
Member

@jeffschwMSFT jeffschwMSFT left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

approved. we will take for consideration in 7.0.x

@kouvel
Copy link
Member Author

kouvel commented Nov 23, 2022

cc @mangod9 @tommcdon

@jeffschwMSFT jeffschwMSFT added Servicing-approved Approved for servicing release and removed Servicing-consider Issue for next servicing release review labels Nov 28, 2022
@jeffschwMSFT jeffschwMSFT modified the milestones: 7.0.x, 7.0.2 Nov 28, 2022
@carlossanlop
Copy link
Member

Branding has been done. Milestone is 7.0.2. Signed-off by area owners. Approved by Tactics. No OOB package authoring changes needed. CI is green.
Ready to merge. :shipit:

@carlossanlop carlossanlop merged commit e13ac7a into dotnet:release/7.0 Nov 29, 2022
@kouvel kouvel deleted the TierFix7 branch November 30, 2022 18:20
@ghost ghost locked as resolved and limited conversation to collaborators Dec 30, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants